package com.cv.platform.service.comment;

import com.cv.framework.common.pojo.PageResult;
import com.cv.platform.controller.platform.comment.vo.reply.CvCommentReplyReqVO;
import com.cv.platform.controller.platform.comment.vo.reply.CvCommentReplyRespVO;
import com.cv.platform.controller.platform.comment.vo.reply.CvCommentReplySaveReqVO;

/**
 * 视频评论回复业务层接口
 *
 * @author Charles_XDXD
 */
public interface CvCommentReplyService {

    /**
     * 创建视频回复评论
     *
     * @param reqVO 视频回复评论保存对象
     */
    void createCommentReply(CvCommentReplySaveReqVO reqVO);

    /**
     * 获取视频回复评论分页数据
     *
     * @param reqVO 分页查询请求对象
     * @return 视频回复评论分页数据
     */
    PageResult<CvCommentReplyRespVO> getCommentReplyPage(CvCommentReplyReqVO reqVO);

    /**
     * 删除所有视频回复评论
     * 
     * @param userId 用户编号
     */
    void deleteAllCommentReply(Long userId);

    /**
     * 通过回复编号获取视频回复评论内容
     * 
     * @param replyId 回复编号
     */
    String getCommentReplyContent(Long replyId);

    /**
     * 通过回复编号删除视频回复评论
     * 
     * @param replyId 回复编号
     */
    void deleteCommentReply(Long replyId);

    /**
     * 通过回复编号获取回复者编号
     * 
     * @param replyId 回复编号
     * @return 回复者编号
     */
    Long getSenderIdByReplyId(Long replyId);
    
}
